Estimation of the Location of a Wireless Terminal, Based on a Propagation Characteristic of a Pressure Wave

ABSTRACT

A method for estimating the location of a wireless terminal at an unknown location, such as within a building. A location engine using the disclosed method receives and uses samples of barometric pressure measured by the wireless terminal to generate a characterization of a pressure wave in the vicinity of the wireless terminal. The location engine generates an estimate of the location of the wireless terminal based on the characterization of the pressure wave and, in some cases, the location of the source of the pressure wave, such as a building&#39;s door that is opening or closing. The location engine also bases the estimate of the wireless terminal&#39;s location on a propagation characteristic of the pressure wave, such as its speed of propagation.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is related to “Detection Of The Occurrence Of An Event,Based On Barometric Pressure Measurements,” application Ser. No.15/791,397, Attorney Docket 465-421us1, which is incorporated byreference herein in its entirety. This application is also related to“Estimation Of The Location Of A Wireless Terminal, Based OnCharacterizing A Pressure Wave,” U.S. application Ser. No. 15/791,395,incorporated by reference herein.

This application is related to U.S. Pat. Nos. 6,518,918, 6,944,465,7,460,505, 7,383,051, 7,257,414, 7,753,278, 7,433,695, 7,848,762, and8,306,676, 8,630,665, and 9,332,389, each of which is incorporated byreference herein.

This application is related to U.S. Patent Application Publications2008/0077356, 2008/0077472, and 2008/0077516, each of which isincorporated by reference herein.

FIELD OF THE INVENTION

The present invention relates to telecommunications in general, and,more particularly, to a technique for estimating the location of awireless terminal based on characterizing a pressure wave of the air inthe vicinity of the wireless terminal.

BACKGROUND OF THE INVENTION

The salient advantage of wireless telecommunications over wirelinetelecommunications is the user of the wireless terminal is afforded theopportunity to use his or her terminal anywhere. On the other hand, thesalient disadvantage of wireless telecommunications lies in that factthat because the user is mobile, an interested party might not be ableto readily ascertain the location of the user.

Such interested parties might include both the user of the wirelessterminal and a remote party. There are a variety of reasons why the userof a wireless terminal might be interested in knowing his or herlocation. For example, the user might be interested in telling a remoteparty where he or she is or, alternatively, the user might seek advicein navigation.

In addition, there are a variety of reasons why a remote party might beinterested in knowing the location of the user. For example, therecipient of an E 9-1-1 emergency call from a wireless terminal might beinterested in knowing the location of the wireless terminal so thatemergency services or service vehicles can be dispatched to thatlocation.

There are many techniques in the prior art for estimating the locationof a wireless terminal. In accordance with some techniques, the locationof a wireless terminal is estimated, at least in part, from signalmeasurements that are reported by the wireless terminal. The reportedmeasurements are of signals measured by the wireless terminal that aretransmitted by one or more base stations and, in some cases, by GlobalPositioning System (GPS) satellites. In order for these techniques towork, at least some of the transmitted signals have to be strong enoughto allow for accurate measurement by the wireless terminal and forreliable processing by the particular estimation technique. Some ofthese techniques work well even in environments where the measuredstrengths of the different signals vary significantly, such as wheresignal obstructions are present, including natural obstructions such asmountains and artificial obstructions such as buildings.

In some environments, however, signals that are too weak to be usableand environmental conditions that are insufficiently or incorrectlycharacterized can cause at least some location estimation techniques toproduce unreliable location estimates. For example, some indoorenvironments can cause such problems to occur. Therefore, the needexists for a technique for estimating the location of a wirelessterminal in a wireless telecommunications environment that includes bothindoor and outdoor areas.

SUMMARY OF THE INVENTION

There are a number of systems in the prior art for estimating thelocation of a wireless terminal. Several of the factors that affect theaccuracy of the estimate are:

-   -   1. whether the signals that travel to and from the wireless        terminal are impaired (e.g., attenuated, reflected, refracted,        etc.) or not,    -   2. whether the system knows if the signals have been impaired or        not, and    -   3. whether the system compensates for the impairment or not.

When the system knows that the signals have been impaired andcompensates for the impairment, the accuracy of the estimate can be verygood. In contrast, when the system does not know that the signals havebeen impaired or does not compensate for the impairment, the accuracy ofthe estimate can be very bad. The military, police, and emergencyservices often rely on the estimates to be good, and a bad estimate canhave serious consequences.

Signals can be impaired by natural objects such as mountains and byartificial objects such as buildings. The impairment caused when awireless terminal is indoors is particularly subtle, and it isparticularly difficult to know that the wireless terminal is indoors, inat least some techniques in the prior art.

To address this problem, embodiments of the present invention estimatewhether a wireless terminal is indoors or outdoors. Although it istrivial for a human to know whether he or she is indoors or outdoors,and it might seem that it should be simple for a machine to know whetherit is indoors or not, it has been a difficult problem in the prior art.

A location engine of the present invention estimates whether thewireless terminal is indoors or not by analyzing the barometric pressurein the vicinity of the wireless terminal. The inventor of the presentinvention recognized that the barometric sensor on various wirelessterminals, such as smartphones, is capable of measuring very subtlechanges in the atmospheric pressure. The inventor had the additionalinsight of, when accumulating such measurements within a building, howsome of the measured changes in the atmospheric pressure correlated tovarious events that occur within the building or other defined area. Forexample, the inventor realized that an entry door opening and closingproduces a pressure wave having a particular transient that isperceptible by a smartphone, accounting for the delay of the pressurewave propagating from the entry door to the smartphone elsewhere in thebuilding. The changes in atmospheric pressure caused by these types ofevents are generally imperceptible to humans.

In contrast, a wireless terminal that is positioned outside of anybuilding is unlikely to measure a change in atmospheric pressureattributed to an entry door opening and closing, even of that of anearby building. This is mainly due to the outside environmentsurrounding the wireless terminal not being a closed space, in contrastto the space inside a building. In other words, a transient inatmospheric pressure attributed to a particular source is detectable insome environments while not being present, or detectable, in others.Thus, a location engine of an illustrative embodiment can infer aprobability that a wireless terminal is indoors based on acharacterization of the pressure wave in the vicinity of the wirelessterminal, wherein the characterization is generated from barometricpressure measurements made by the wireless terminal.

The location engine of the illustrative embodiment uses a correlationthat exists between i) the presence of a transient in thecharacterization of a pressure wave in the vicinity of a wirelessterminal and ii) whether the wireless terminal is indoors or not.Transients in pressure waves are often present and detectable indoorsbut not outdoors. By accounting for the transients being detected or notbeing detected in the vicinity of the wireless terminal, the disclosedtechnique is able to estimate whether the wireless terminal is indoors.

In some embodiments of the present invention, the location engine cangenerate an estimate of the location of the wireless terminal based onknowing the location of the source of the pressure wave, such as theentry door that is opening and closing. The location engine can alsogenerate the location estimate and/or the distance of the wirelessterminal from the source based on the time at which a predeterminedfeature, such as a transient, is present in the pressure wave, inrelation to the time at which a predetermined event occurs, such as anentry door opening and closing.

A first illustrative method of estimating the probability that awireless terminal is indoors comprises: receiving, by a data-processingsystem, a sample of barometric pressure measured at a first wirelessterminal; generating, by the data-processing system, a characterizationof a pressure wave in the vicinity of the first wireless terminal basedon the sample of barometric pressure measured at the first wirelessterminal; and generating, by the data-processing system, an estimate ofthe probability that the first wireless terminal is indoors based on:the characterization of the pressure wave in the vicinity of the firstwireless terminal.

A second illustrative method of estimating the location of a wirelessterminal comprises: receiving, by a data processing system, the identityof a radio signal that is received by a wireless terminal; receiving, bythe data processing system, a sample of barometric pressure measured atthe wireless terminal; generating, by the data-processing system, acharacterization of a pressure wave in the vicinity of the wirelessterminal based on the sample of barometric pressure measured at thewireless terminal; designating at least one of a plurality of possiblelocations of the wireless terminal as improbable based on: whether apredetermined feature is present in the characterization of the pressurewave; and estimating the location of the wireless terminal to be one ofthe plurality of possible locations of the wireless terminal notdesignated as improbable based on: the identity of the radio signal.

A third illustrative method of estimating the location of a wirelessterminal comprises: receiving, by a data processing system, ameasurement of a location-dependent trait of a radio signal as receivedby a wireless terminal; receiving, by the data processing system, asample of barometric pressure measured at the wireless terminal;generating, by the data-processing system, a characterization of apressure wave in the vicinity of the wireless terminal based on thesample of barometric pressure measured at the wireless terminal;designating at least one of a plurality of possible locations of thewireless terminal as improbable based on: whether a predeterminedfeature is present in the characterization of the pressure wave; andestimating the location of the wireless terminal to be one of theplurality of possible locations of the wireless terminal not designatedas improbable based on: the measurement of the location-dependent traitof the radio signal.

A fourth illustrative method of estimating the location of a wirelessterminal comprises: receiving, by a data processing system, ameasurement of a difference of a location-dependent trait of: 1) a firstradio signal as received by a wireless terminal, wherein the first radiosignal is transmitted by a first transmitter at a first location, and 2)a second radio signal as received by the wireless terminal, wherein thesecond radio signal is transmitted by a second transmitter at a secondlocation, and receiving, by the data processing system, a sample ofbarometric pressure measured at the wireless terminal; generating, bythe data-processing system, a characterization of a pressure wave in thevicinity of the wireless terminal based on the sample of barometricpressure measured at the wireless terminal; designating at least one ofa plurality of possible locations of the wireless terminal as improbablebased on: whether a predetermined feature is present in thecharacterization of the pressure wave; and estimating the location ofthe wireless terminal to be one of the plurality of possible locationsof the wireless terminal not designated as improbable based on: themeasurement of the difference of the location-dependent trait.

A fifth illustrative method of estimating the location of a wirelessterminal comprises: receiving, by a data processing system, a sample ofbarometric pressure measured at a wireless terminal; generating, by thedata-processing system, a characterization of a pressure wave in thevicinity of the wireless terminal based on the sample; and generating,by the data-processing system, an estimate of the location of thewireless terminal based on: i) the characterization of the pressure wavein the vicinity of the wireless terminal, and ii) the location at whicha predetermined event occurs that causes the pressure wave.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a diagram of the salient components of wirelesstelecommunications system 100 in accordance with the illustrativeembodiment of the present invention.

FIG. 2 depicts a block diagram of the salient components of wirelessterminal 101 in accordance with the illustrative embodiment of thepresent invention.

FIG. 3 depicts a block diagram of the salient components of location anddetection engine 113 in accordance with the illustrative embodiment.

FIG. 4 depicts a flowchart of the salient processes performed inaccordance with the illustrative embodiment of the present invention.

FIG. 5 depicts a flowchart of the salient processes performed inaccordance with task 401.

FIG. 6 a detailed map of the ground level of geographic region 120.

FIG. 7 depicts geographic region 120 divided into a 10 by 10 grid.

FIGS. 8A and 8B depict respective maps of the ground floor and crosssections of the multiple floors of square building 602.

FIG. 9 depicts a flowchart of the salient processes performed inaccordance with task 403.

FIG. 10 depicts a flowchart of the salient processes performed inaccordance with task 405.

FIG. 11 depicts a flowchart of the salient processes performed inaccordance with task 407.

FIG. 12 depicts a flowchart of the salient processes performed inaccordance with task 409.

FIG. 13 depicts characterization 1300, which represents barometricpressure in the vicinity of wireless terminal 101, as a function oftime.

FIGS. 14A and 14B represent additional aspects of the pressure wavecharacterized in FIG. 13.

FIG. 15 depicts a flowchart of the salient processes performed inaccordance with task 411.

FIG. 16 depicts a flowchart of the salient processes performed inaccordance with task 1501.

FIG. 17 depicts an illustrative map of the locations in geographicregion 120 that are designated as improbable and those that are not.

FIG. 18 depicts a flowchart of the salient processes performed inaccordance with task 415.

FIGS. 19A and 19B depict illustrative locations of wireless terminals101, 102, 131, and 132 in and around building 602.

DEFINITIONS

Barometric Pressure—For the purposes of this specification, the term“barometric pressure” is defined as a pressure measured by a barometer.This pressure relates to atmospheric pressure, which is the force perunit area exerted on a surface by the weight of the air above thatsurface in the atmosphere of Earth.

Based on—For the purposes of this specification, the phrase “based on”is defined as “being dependent on” in contrast to “being independentof”. The value of Y is dependent on the value of X when the value of Yis different for two or more values of X. The value of Y is independentof the value of X when the value of Y is the same for all values of X.Being “based on” includes both functions and relations.

Door—For the purposes of this specification, the term “door” is definedas a hinged, sliding, or revolving barrier at the entrance to abuilding, room, or vehicle.

Estimate of the Probability that the Wireless Terminal is Indoors—Forthe purposes of this specification, an “estimate of the probability thatthe wireless terminal is indoors” is defined as the complement of anestimate of the probability that the wireless terminal is outdoors(i.e., P(indoors)=1−P(outdoors)).

Generate—For the purposes of this specification, the infinitive “togenerate” and its inflected forms (e.g., “generating”, “generation”,etc.) should be given the ordinary and customary meaning that the termswould have to a person of ordinary skill in the art at the time of theinvention.

Identity of a Radio Signal—For the purposes of this specification, thephrase “identity of a radio signal” is defined as one or more indiciathat distinguish one radio signal from another radio signal.

Location—For the purposes of this specification, the term “location” isdefined as a zero-dimensional point, a finite one-dimensional pathsegment, a finite two-dimensional surface area, or a finitethree-dimensional volume.

Location-Dependent Trait of a Radio Signal—For the purposes of thisspecification, the term “location-dependent trait of a radio signal” isdefined as a characteristic of a radio signal that varies with:

-   -   (i) the location of the transmitter of the signal, or    -   (ii) the location of the receiver of the signal, or    -   (iii) both i and ii.        For example and without limitation, the amplitude and phase of a        radio signal are generally location-dependent traits of the        signal. In contrast, the frequency of a radio signal is        generally not a location-dependent trait of the signal.

Location-Trait Database—For the purposes of this specification, a“Location-Trait Database” is defined as a mapping that associates:

-   -   (i) one or more location-dependent traits of one or more radio        signals received or transmitted by a wireless terminal, or    -   (ii) the identity of one or more radio signals received or        transmitted by a wireless terminal, or    -   (iii) both i and ii,        at each of a plurality of locations.

Pressure Wave—For the purposes of this specification, a “pressure wave”is defined as a wave or waves in which the propagated disturbance is avariation of pressure in a material medium (e.g., air, etc.). A pressurewave can comprise one or more alternating compressions and rarefactions,wherein each compression or rarefaction can be the same as, or can bedifferent from, one another with respect to one or more characteristics.Such characteristics can include amplitude, duration, shape, and slope,for example and without limitation.

Processor—For the purposes of this specification, a “processor” isdefined as hardware or hardware and software that performs mathematicaland/or logical operations.

Radio—For the purposes of this specification, a “radio” is defined ashardware or hardware and software that is capable of telecommunicationsvia an unguided (i.e., wireless) radio signal of frequency less than 600GHz.

Receive—For the purposes of this specification, the infinitive “toreceive” and its inflected forms (e.g., “receiving”, “received”, etc.)should be given the ordinary and customary meaning that the terms wouldhave to a person of ordinary skill in the art at the time of theinvention.

Transient—For the purposes of this specification, a “transient” isdefined a momentary variation in a physical property (e.g., barometricpressure, etc.) being measured.

Transmit—For the purposes of this specification, the infinitive “totransmit” and its inflected forms (e.g., “transmitting”, “transmitted”,etc.) should be given the ordinary and customary meaning that the termswould have to a person of ordinary skill in the art at the time of theinvention.

Wireless terminal—For the purposes of this specification, the term“wireless terminal” is defined as a device that is capable oftelecommunications without a wire or tangible medium. A wirelessterminal can be mobile or immobile. A wireless terminal can transmit orreceive or transmit and receive. As is well known to those skilled inthe art, a wireless terminal is also commonly called a cell phone, apager, a wireless transmit/receive unit (WTRU), a user equipment (UE), amobile station, a fixed or mobile subscriber unit, a pager, a cellulartelephone, a personal digital assistant (PDA), a computer, a data packetmoden, and any other type of device capable of operating in a wirelessenvironment are examples of wireless terminals.

DETAILED DESCRIPTION

FIG. 1 depicts a diagram of the salient components of wirelesstelecommunications system 100 in accordance with the illustrativeembodiment of the present invention. Wireless telecommunications system100 comprises: wireless terminals 101 and 102, cellular base stations103-1, 103-2, and 103-3, Wi-Fi base stations 104-1 and 104-2, wirelessinfrastructure 111, location-based application server 112, location anddetection engine 113, and GPS constellation 121, interrelated as shown.

Wireless infrastructure 111, location-based application server 112,location and detection engine 113 (hereinafter “location engine 113”),and Wi-Fi base stations 104-1 and 104-2 are all connected to one or moreinterconnected computer networks (e.g., the Internet, a local-areanetwork, a wide-area network, etc.) and, as such, can exchange data inwell-known fashion.

Although the illustrative embodiment depicts wireless telecommunicationssystem 100 as comprising two wireless terminals, it will be clear tothose skilled in the art, after reading this disclosure, how to make anduse alternative embodiments of the present invention that comprise anynumber of wireless terminals.

Wireless terminals 101 and 102 comprise the hardware and softwarenecessary to perform the processes described below and in theaccompanying figures. Furthermore, wireless terminals 101 and 102 aremobile and can be at any location within geographic region 120 at anytime.

Wireless terminals 101 and 102 can provide bi-directional voice, data,and video telecommunications service to their respective users (notshown), but it will be clear to those skilled in the art, after readingthis disclosure, how to make and use embodiments of the presentinvention in which wireless terminals 101 and 102 provide a differentset of services.

In accordance with the illustrative embodiment, wireless terminals 101and 102 can receive one or more radio signals from each of base stations103-1, 103-2, and 103-3, Wi-Fi base stations 104-1 and 104-2, and GPSconstellation 121, in well-known fashion. Wireless terminals 101 and 102are also capable of identifying each radio signal it receives, inwell-known fashion, and of transmitting the identity of each signal itreceives to location engine 113. Wireless terminals 101 and 102 arefurther capable of measuring one or more location-dependent traits ofeach radio signal they receive, in well-known fashion, and oftransmitting each measurement they generate to location engine 113. Andstill furthermore, wireless terminals 101 and 102 can measure adifference of a location-dependent trait of two signals they eachreceive, in well-known fashion, and of transmitting such measurements tolocation engine 113.

In accordance with the illustrative embodiment, wireless terminals 101and 102 can transmit one or more radio signals—that can be received byone or more of base stations 103-1, 103-2, and 103-3 and Wi-Fi basestations 104-1 and 104-2—in accordance with specific parameters (e.g.,signal strength, frequency, coding, modulation, etc.), in well-knownfashion, and of transmitting those parameters to location engine 113.

In accordance with the illustrative embodiment, and as described indetail below, wireless terminals 101 and 102 each comprise a barometer205 (shown in FIG. 2). Wireless terminals 101 and 102 are capable ofmeasuring (e.g., periodically, sporadically, and on-demand) thebarometric pressure, in well-known fashion, and of transmitting themeasurements to location engine 113.

Cellular base stations 103-1, 103-2, and 103-3 communicate with wirelessinfrastructure 111 via wireline and with wireless terminals 101 and 102via radio in well-known fashion. As is well known to those skilled inthe art, base stations are also commonly referred to by a variety ofalternative names such as access points, nodes, network interfaces, etc.Although the illustrative embodiment comprises three cellular basestations, it will be clear to those skilled in the art, after readingthis disclosure, how to make and use alternative embodiments of thepresent invention that comprise any number of cellular base stations.

In accordance with the illustrative embodiment of the present invention,cellular base stations 103-1, 103-2, and 103-3 are terrestrial andimmobile, and base station 103-3 is situated within geographic region120. It will be clear to those skilled in the art, after reading thisdisclosure, how to make and use alternative embodiments of the presentinvention in which some or all of the base stations are airborne,marine-based, or space-based, regardless of whether or not they aremoving relative to the Earth's surface, and regardless of whether or notthey are within geographic region 120.

Cellular base stations 103-1, 103-2, and 103-3 comprise the hardware andsoftware necessary to be 3GPP-compliant and to perform the processesdescribed below and in the accompanying figures. For example and withoutlimitation, each of cellular base stations 103-1, 103-2, and 103-3 arecapable of continually:

-   -   a. receiving one or more radio signals transmitted by wireless        terminals 101 and 102, and    -   b. identifying each radio signal transmitted by wireless        terminals 101 and 102, in well-known fashion, and of        transmitting the identity of those signals to location engine        113, and    -   c. measuring one or more location-dependent traits of each radio        signal transmitted by wireless terminals 101 and 102, in        well-known fashion, and of transmitting the measurements to        location engine 113, and    -   d. transmitting one or more signals to wireless terminals 101        and 102 in accordance with specific parameters (e.g., signal        strength, frequency, coding, modulation, etc.), in well-known        fashion, and of transmitting those parameters to location engine        113, and    -   e. broadcasting one or more signals that wireless terminals can        use for various purposes (e.g., mobile assisted handoff,        location determination, etc.).        It will be clear to those skilled in the art how to make and use        cellular base stations 103-1, 103-2, and 103-3.

Wi-Fi base stations 104-1 and 104-2 communicate with wireless terminals101 and 102 via radio in well-known fashion. Wi-Fi base stations 104-1and 104-2 are terrestrial, immobile, and within geographic region 120.Although the illustrative embodiment comprises two Wi-Fi base stations,it will be clear to those skilled in the art, after reading thisdisclosure, how to make and use alternative embodiments of the presentinvention that comprise any number of Wi-Fi base stations.

Each of Wi-Fi base stations 104-1 and 104-2 are capable of continually:

-   -   a. receiving one or more radio signals transmitted by wireless        terminals 101 and 102, and    -   b. identifying each radio signal transmitted by wireless        terminals 101 and 102, in well-known fashion, and of        transmitting the identity of those signals to location engine        113, and    -   c. measuring one or more location-dependent traits of each radio        signal transmitted by wireless terminals 101 and 102, in        well-known fashion, and of transmitting the measurements to        location engine 113, and    -   f. transmitting one or more signals to wireless terminals 101        and 102 in accordance with specific parameters (e.g., signal        strength, frequency, coding, modulation, etc.), in well-known        fashion, and of transmitting those parameters to location engine        113, and    -   d. broadcasting one or more signals that wireless terminals can        use for various purposes (e.g., mobile assisted handoff,        location determination, etc.).

It will be clear to those skilled in the art how to make and use Wi-Fibase stations 104-1 and 104-2.

Wireless infrastructure 111 comprises a switch that orchestrates theprovisioning of telecommunications service to wireless terminals 101 and102 and the flow of information to and from location engine 113, asdescribed below and in the accompanying figures. As is well known tothose skilled in the art, wireless switches are also commonly referredto by other names such as mobile switching centers, mobile telephoneswitching offices, routers, and so on.

Location-based application server 112 comprises hardware and softwarethat uses the estimate of the location of wireless terminals 101 and102—generated by location engine 113—in a location-based application, inwell-known fashion. Location-based applications are well-known in theart and provide services such as without limitation E-911 routing,navigation, location-based advertising, weather alerts.

Location engine 113 is a data processing system that comprises hardwareand software that generates one or more estimates of the locations ofwireless terminals 101 and 102 as described below and in theaccompanying figures. It will be clear to those skilled in the art,after reading this disclosure, how to make and use location engine 113.Furthermore, although location engine 113 is depicted in FIG. 3 asphysically distinct from wireless infrastructure 111, it will be clearto those skilled in the art, after reading this disclosure, how to makeand use alternative embodiments of the present invention in whichlocation engine 113 is wholly or partially integrated into wirelessinfrastructure 111. Location engine 113 comprises the location-traitdatabase and GIS databases, which are described in detail below.

Wireless Terminal 101—FIG. 2 depicts a block diagram of the salientcomponents of wireless terminal 101 in accordance with the illustrativeembodiment of the present invention. Wireless terminal 101 comprises:radio receiver and transmitter 201, processor 202, memory 203, humaninterface 204, and barometer 205, interconnected as shown. The blockdiagram depicted in FIG. 2 can also be considered representative ofwireless terminal 102 and other wireless terminals.

Radio receiver and transmitter 201 comprises hardware and software thatenables wireless terminal 101 to receive (and analyze) radio signals andto transmit radio signals. In accordance with the illustrativeembodiment, wireless telecommunications service is provided to wirelessterminal 101 in accordance with the Long-Term Evolution (LTE) 4Gair-interface standard of the 3rd Generation Partnership Project(“3GPP”). After reading this disclosure, however, it will be clear tothose skilled in the art how to make and use alternative embodiments ofthe present invention that operate in accordance with one or more otherair-interface standards (e.g., a 5G or other standard under development,a different 4G standard, Global System Mobile “GSM,” UMTS, CDMA-2000,IS-136 TDMA, IS-95 CDMA, 3G Wideband CDMA, IEEE 802.11 Wi-Fi, 802.16WiMax, Bluetooth, etc.) in one or more frequency bands. It will be clearto those skilled in the art how to make and use radio receiver andtransmitter 201.

Processor 202 is hardware under the command of software stored in memory203 that performs all of the functions described below and in theaccompanying figures. It will be clear to those skilled in the art howto make and use processor 202.

Memory 203 is a non-transitory, non-volatile random-access memory thatholds all of the programming and data required for the operation ofwireless terminal 101, and includes operating system 211, applicationsoftware 212, and database 213. It will be clear to those skilled in theart how to make and use memory 203.

Human interface 204 is hardware and software that enables a person tointeract with wireless terminal 101. Human interface 204 comprises adisplay, keypad, microphone, and speaker. It will be clear to thoseskilled in the art how to make and use human interface 204.

Barometer 205 is a hardware MEMS sensor that measures the atmosphericpressure at wireless terminal 101, thereby providing barometric pressuremeasurements. In accordance with the illustrative embodiment, barometer205 comprises the LSP331AP MEMS pressure sensor from ST Microelectronicsand/or the Bosch BMP280 sensor, but it will be clear those skilled inthe art, after reading this disclosure, how to make and use alternativeembodiments of the present invention that use a different sensor tomeasure the atmospheric pressure.

As those who are skilled in the art will appreciate, wireless terminal101 can be equipped with one or more sensors that can measuretemperature of and/or humidity in the environment. For example, theBosch BMP280 chip is also capable of measuring temperature.

Wireless terminal 101 can perform at least some of the processesdescribed below and in the accompanying figures. For example and withoutlimitation, wireless terminal 101 is capable of:

-   -   a. receiving one or more radio signals transmitted by cellular        base stations 103-1, 103-2, and 103-3, Wi-Fi base stations 104-1        and 104-2, and GPS constellation 121, and    -   b. identifying each radio signal transmitted by cellular base        stations 103-1, 103-2, and 103-3, Wi-Fi base stations 104-1 and        104-2, and GPS constellation 121, in well-known fashion, and of        transmitting the identity of those signals to location engine        113, and    -   c. measuring one or more location-dependent traits of each radio        signal transmitted by cellular base stations 103-1, 103-2, and        103-3, Wi-Fi base stations 104-1 and 104-2, and GPS        constellation 121, in well-known fashion, and of transmitting        the measurements to location engine 113, and    -   d. transmitting one or more signals to cellular base stations        103-1, 103-2, and 103-3, Wi-Fi base stations 104-1 and 104-2 in        accordance with specific parameters (e.g., signal strength,        frequency, coding, modulation, etc.), in well-known fashion, and        of transmitting those parameters to location engine 113, and    -   e. measuring the barometric pressure at wireless terminal 101,        in well-known fashion, and transmitting those measurements to        location engine 113. In some embodiments of the present        invention, wireless terminal can measure the temperature and/or        humidity at wireless terminal 101, in well-known fashion, and        transmit those measurements to location engine 113.        It will be clear to those skilled in the art how to make and use        wireless terminal 101.

Location Engine 113—FIG. 3 depicts a block diagram of the salientcomponents of location engine 113 in accordance with the illustrativeembodiment. Location engine 113 comprises: receiver and transmitter 301,processor 302, and memory 303, which are interconnected as shown.

Receiver and transmitter 301 enables location engine 113 to transmit toand receive from wireless terminals 101 and 102, wireless infrastructure111, location-based application server 112, and Wi-Fi base stations104-1 and 104-2, in well-known fashion. It will be clear to thoseskilled in the art how to make and use receiver and transmitter 303.

Processor 302 is a general-purpose processor that can execute anoperating system, the application software that performs tasks 403through 417 (described herein and shown in FIG. 4), and of populating,amending, using, and managing a location-trait database and a GISdatabase, as described in detail below and in the accompanying figures.It will be clear to those skilled in the art how to make and useprocessor 302.

In general, the location-trait database contains information for thepossible locations of wireless terminal and the identity andlocation-dependent traits of radio signals as if wireless terminal 101were at each of those locations. It will be clear to those skilled inthe art how to make and use the location-trait database.

In general, the GIS database contains information for geographic region120, including without limitation, the physical characteristics of allof the structures in geographic region 120. It will be clear to thoseskilled in the art how to make and use the GIS database.

Memory 303 is a non-transitory, non-volatile memory that stores:

-   -   a. operating system 311, and    -   b. application software 312, and    -   c. the location-trait database in database 313, and    -   d. the GIS database in database 313.        It will be clear to those skilled in the art how to make and use        memory 303.

Operation of the Illustrative Embodiment—FIG. 4 depicts a flowchart ofthe salient processes performed in accordance with the illustrativeembodiment of the present invention. It will be clear to those havingordinary skill in the art, after reading the present disclosure, how tomake and use alternative embodiments of method 400, as well as the othermethods disclosed in this specification, wherein the recited operationssub-operations, and messages are differently sequenced, grouped, orsub-divided—all within the scope of the present disclosure. It will alsobe clear to those skilled in the art, after reading the presentdisclosure, how to make and use alternative embodiments of the disclosedmethods wherein some of the described operations, sub-operations, andmessages are optional, or are omitted.

It will also be clear to those skilled in the art, after reading thepresent disclosure, how to make and use alternative embodiments of thedisclosed methods wherein some of the disclosed operations are performedby other elements and/or systems. For example and without limitation, atleast some of the operations disclosed as being performed by locationengine 113 can be performed by one or more wireless terminals (e.g.,terminal 101, terminal 102, etc.).

At task 401, the location-trait database and the GIS database areconstructed and stored in memory 303 of location engine 113. Task 401 isdescribed in detail below and in the accompanying figures.

At task 403, location engine 113 collects measurements of barometricpressure from wireless terminals 101 and 102. In some embodiments of thepresent invention, location engine 113 can also collect measurements oftemperature and/or humidity from wireless terminals 101 and 102. Task403 is described in detail below and in the accompanying figures.

At task 405, location engine 113 collects location estimates fromwireless terminals 101 and 102. Task 405 is described in detail belowand in the accompanying figures.

At task 407, location engine 113 collects empirical data on the radiosignals received and transmitted by wireless terminals 101 and 102. Task407 is described in detail below and in the accompanying figures.

At task 409, location engine 113 generates characterizations of apressure wave that is in the vicinities of wireless terminals 101 and102, based on the barometric pressure measurements, and assesses thecharacterizations. Task 409 is described in detail below and in theaccompanying figures.

At task 411, location engine 113 estimates the location of wirelessterminal 101, based in part on the characterizations of the pressurewave. Task 411 is described in detail below and in the accompanyingfigures.

At task 413, location engine 113 transmits the estimate of the locationof wireless terminal 101 generated in task 411 to location-basedapplication server 112 and/or to wireless terminal 101 for use in alocation-based application. It will be clear to those skilled in the arthow to enable embodiments of the present invention to perform task 413.After task 413 is completed, control passes back to task 403.

At task 415, location engine 113 estimates information about an eventhaving occurred, based in part on the characterizations of the pressurewave. Task 415 is described in detail below and in the accompanyingfigures. Location 113 can perform tasks 415 and 417, either instead ofor in addition to tasks 411 and 413.

At task 417, location engine 113 transmits the estimate of theevent-related information generated in task 415 to location-basedapplication server 112 and/or to wireless terminal 101 or 102 for use.In some embodiments of the present invention, the event-relatedinformation is displayed (e.g., by wireless terminal 101, etc.). It willbe clear to those skilled in the art how to enable embodiments of thepresent invention to perform task 417. After task 417 is completed,control passes back to task 403.

Task 401: Construct the GIS Database and the Location-TraitDatabase—FIG. 5 depicts a flowchart of the salient processes performedin accordance with task 401.

At task 501, the GIS database is constructed and stored in memory 303 oflocation engine 113.

As part of task 501, geographic region 120 is delimited and surveyed.FIG. 6 depicts a detailed map that is made of geographic region 120,which spans approximately four city blocks and comprises, among otherthings, park 601, square building 602, empty lot 603, and circularbuilding 604. It will be clear to those skilled in the art, afterreading this disclosure, how to make and use alternative embodiments ofthe present invention that comprise any area, any geographic features,and any number, size, height, and shape of structures.

In accordance with the illustrative embodiment, geographic region 120 isflat, level, and at a known elevation. It will be clear to those skilledin the art, however, after reading this disclosure, how to make and usealternative embodiments of the present invention in which geographicregion is not flat, not level, and/or is at a different elevation.

In accordance with the illustrative embodiment, geographic region 120 issquare and comprises approximately four city blocks of an urbanenvironment. It will be clear to those skilled in the art however, afterreading this disclosure, how to make and use alternative embodiments ofthe present invention in which geographic region 120 has any area of anyshape and any population density and development.

As part of task 501, grid 700 is overlaid onto geographic region 120 asshown in FIG. 7. Grid 700 is a 10-by-10-meter grid that partitionsgeographic region 120 into a plurality of possible locations of wirelessterminal 101. FIG. 7 also depicts the relationship of the footprints ofsquare building 602 and circular building 604 with respect to the grid.

Although the illustrative embodiment comprises 100 grid squares, it willbe clear to those skilled in the art how to make and use alternativeembodiments of the present invention that comprise any number ofpossible locations with any shape. See for example and withoutlimitation, U.S. Pat. No. 7,753,278, which is incorporated by reference.

Also as part of task 501, the indoor space within each building withingeographic region 120 is delimited and surveyed. FIGS. 8A and 8B depictrespective maps of the ground floor (map 602-1) and cross sections ofthe multiple floors (map 602-2) of square building 602. In particular,elevator 801, stairwell 802, and building entry doors 803 and 804 aredepicted, which are known to be sources of pressure waves within thebuilding. As those who are skilled in the art will appreciate afterreading this specification, other sources of pressure waves (e.g., HVACequipment and infrastructure, windows, manufacturing equipment, closedspaces, equipment for releasing building over-pressurization, etc.)aside from or in addition to doors and elevators can be delimited andsurveyed.

It will be clear to those skilled in the art, after reading thisdisclosure, how to make and use alternative embodiments of the presentinvention that comprise any indoor floor area, any indoor features(e.g., location of building assets, structural fixtures, etc.), and anynumber, size, height, and shape of building features (e.g., rooms,doors, building floors, etc.).

Also depicted in FIGS. 8A and 8B are illustrative locations of wirelessterminals 101, 102, and 131 in and around building 602. Although notpart of the survey itself, the wireless terminals are depicted in orderto show that they can be outside of the building, within the building,and at different places within the building. As disclosed below, thepressure waves experienced by these different wireless terminals can bedifferent from one another; consequently, the techniques disclosedherein can use a characterization of the pressure wave in the vicinitiesof these wireless terminals to estimate various types of information,both about a wireless terminal and about a source of an event thatcauses a pressure wave.

At task 503, the location-trait database is constructed and stored intomemory 303 of location engine 113. As part of task 503, the identity andlocation-dependent traits for each radio signal a wireless terminal(e.g., terminal 101, terminal 102, etc.) is expected to be able toreceive from cellular base stations 103-1, 103-2, and 103-3, Wi-Fi basestations 104-1 and 104-2, for each possible location of the wirelessterminal, is determined in well-known fashion.

As part of task 503, the identity of—and location-dependent traitsfor—each radio signal that each of cellular base stations 103-1, 103-2,and 103-3, Wi-Fi base stations 104-1 and 104-2 is expected to be able toreceive from wireless terminal 101, for each possible location ofwireless terminal 101, is determined in well-known fashion.

It will be clear to those skilled in the art how to accomplish task 503,and in accordance with the illustrative embodiment, this can beaccomplished through a combination of empirical data gathering (e.g.,“drive-testing”), crowd-sourcing, and/or radio-frequency propagationmodeling. See for example and without limitation, U.S. PatentApplication Publications 2008/0077356, 2008/0077472, and 2008/0077516,which are incorporated by reference.

Task 403: Collect Barometric Measurements—FIG. 9 depicts a flowchart ofthe salient processes performed in accordance with task 403. Forillustrative purposes, wireless terminal 101 is depicted as performingvarious operations in FIG. 9 and other figures. It will be clear tothose skilled in the art after reading this specification, however, howto make and use embodiments of the present invention in which otherwireless terminals (e.g., wireless terminal 102, etc.) perform at leastsome of the operations that wireless terminal 101 is depicted asperforming, in addition to or instead of wireless terminal 101.

At task 901, wireless terminal 101 measures samples of barometricpressure, P_(T), in its vicinity by using barometer 205. In someembodiments of the present invention, each sample represents onemeasurement of barometric pressure, while in some other embodiments eachsample comprises more than one measurement of barometric pressure. Inaccordance with the illustrative embodiment, a measurement of barometricpressure is taken once per second, but it will be clear to those skilledin the art how to make and use alternative embodiments of the presentinvention that take the measurements at a different rate (e.g., 5 persecond, 10 per second, etc.).

At task 903, wireless terminal 101 transmits the samples of barometricpressure, P_(T), to location engine 113. In accordance with theillustrative embodiment, task 903 is performed every 5 seconds, but itwill be clear to those skilled in the art how to make and usealternative embodiments of the present invention that transmit thesamples of barometric pressure at other times.

At task 905, location engine 113 receives the barometric pressuresamples transmitted in task 903.

In accordance with the illustrative embodiment, tasks 901, 903, and 905are performed continuously, concurrently, and asynchronously. It will beclear to those skilled in the art how to make and use alternativeembodiments of the present invention, in which a non-wireless devicemeasures samples and provides them to location engine 113, and in whichlocation engine 113 receives barometric pressure samples from at leastsome non-wireless devices.

As those who are skilled in the art will appreciate after reading thisspecification, in some embodiments of the present invention wirelessterminal 101 can perform at least some of the analysis on the barometricmeasurements, such as that performed in accordance with task 409. Thus,task 903 is not necessarily needed for terminal 101 to analyze apressure wave or to refine the pressure wave over time. Additionally,information helpful to wireless terminal 101, such as changes inexterior pressure, can also be sent and stored on the wireless terminal.

Task 405: Collect Estimated Locations of Wireless Terminal—FIG. 10depicts a flowchart of the salient processes performed in accordancewith task 405.

At task 1001, wireless terminal 101 estimates its location in well-knownfashion. In accordance with the illustrative embodiment, task 1001 isperformed once every 10 seconds, but it will be clear to those skilledin the art how to make and use alternative embodiments of the presentinvention that take the measurements at a different rate (e.g., everysecond, etc.).

At task 1003, wireless terminal 101 transmits its location estimates,L_(T), to location engine 113. In accordance with the illustrativeembodiment, task 1003 is performed every 10 seconds, but it will beclear to those skilled in the art how to make and use alternativeembodiments of the present invention that transmit the measurements atother times.

At task 1005, location engine 113 receives the location estimatestransmitted in task 1003.

In accordance with the illustrative embodiment, tasks 1001, 1003, and1005 are performed continuously, concurrently, and asynchronously.

Task 407: Collect Empirical Data on Radio Signals—FIG. 11 depicts aflowchart of the salient processes performed in accordance with task407.

At task 1101, each of cellular base stations 103-1, 103-2, and 103-3 andWi-Fi base stations 104-1 and 104-2 transmits the identity of eachsignal it has received from wireless terminal 101 and the measurements(i.e., as measured by the base station) of the location-dependent traitsof those signals. In accordance with the illustrative embodiment, task1101 is performed every 20 milliseconds, but it will be clear to thoseskilled in the art how to make and use alternative embodiments of thepresent invention that transmit the measurements at other times.

At task 1103, location engine 113 receives the identities andmeasurements transmitted at task 1101.

At task 1105, wireless terminal 101 transmits the identity of eachsignal it receives from cellular base stations 103-1, 103-2, and 103-3and Wi-Fi base stations 104-1 and 104-2, and the measurements (i.e., asmeasured by the wireless terminal) of the location-dependent traits ofthose signals. In accordance with the illustrative embodiment, task 1105is performed every 20 milliseconds, but it will be clear to thoseskilled in the art how to make and use alternative embodiments of thepresent invention that transmit the measurements at other times.

At task 1107, location engine receives the identities and measurementstransmitted at task 1105.

In accordance with the illustrative embodiment, tasks 1101, 1103, 1105,and 1107 are performed continuously, concurrently, and asynchronously.

Task 409: Generate One or More Characterizations of a Pressure Wave—FIG.12 depicts a flowchart of the salient processes performed in accordancewith task 409.

At task 1201, location engine 113 generates a first characterization ofa pressure wave in the vicinity of wireless terminal 101, based on oneor more samples of barometric pressure measured at wireless terminal 101and received at task 905. In accordance with the illustrativeembodiment, the first characterization characterizes the pressure in theair in the vicinity of wireless terminal 101, as a function of time. Insome alternative embodiments of the present invention, acharacterization of a pressure wave can be generated from measurementsoriginating from a different type of sensor, such as a microphone thatis capable of detecting frequencies below 30 Hz, some of which beingassociated with a pressure wave moving through the air.

As an example, FIG. 13 depicts characterization 1300, which representsbarometric pressure (in millibars) in the vicinity of wireless terminal101, as a function of time (over 14 hours). Graph 1301 represents theraw pressure data over time (one measurement taken per second), whilegraph 1302 represents a processed version of the raw pressure data,smoothed by using the median value within a sliding window (40 secondsin length). Transients 1303 and 1304 are transients in the raw data, andare two of many that appear in the characterization (mainly between time09:00 am and 12:30 pm).

FIGS. 14A and 14B represent additional aspects of the pressure wavecharacterized in FIG. 13. FIG. 14A depicts a zoomed-in portion ofcharacterization 1300 and also represents barometric pressure (inmillibars) in the vicinity of wireless terminal 101 as a function oftime, but over roughly 70 seconds or so. Graph 1301 represents the rawpressure data over time (one measurement taken per second), as in FIG.13. Transient 1304 is depicted in FIG. 14A and, for pressure values thatfall to below 1014.35 millibars, has a duration of around six seconds.

As those who are skilled in the art will appreciate after reading thisspecification, a transient can be characterized as lasting for apredetermined length of time (e.g., one second or more, two seconds ormore, five seconds or more, one second or less, two seconds or less,five seconds or less, etc.) below (or above) a predetermined level. Insome embodiments of the present invention, location engine 113 can infera speed of propagation of the pressure wave from the change in pressureas characterized by the transient; for example, a wider transient mightsignify a slower-moving pressure wave, while a narrower transient mightsignify a faster-moving pressure wave.

A transient can also be characterized as exceeding a predetermineddeviation in pressure from a reference level, as depicted in FIG. 14B.FIG. 14B depicts characterization 1400, which is based on the same rawpressure data as characterization 1300, and over the same period oftime. Characterization 1400 is different in that it represents theabsolute value of the difference between graph 1301 and graph 1302.Threshold 1401 is a threshold for median barometric sensor noise.Transients 1303 and 1304 are the same transients in the data as before.By representing the absolute value of the difference as described above,characterization 1400 emphasizes the characteristic of the peakamplitude (i.e., a non-negative value) of a transient exceeding, by apredetermined amount, at least one of i) a mean value of and ii) medianvalue of a portion of the pressure wave. Characterization 1400 is alsoaffected by the sliding-window size and/or other noise reduction methodsthat can be used to generate graph 1302.

At task 1203, location engine 113 generates a second characterization ofa pressure wave in the vicinity of wireless terminal 102, based on oneor more samples of barometric pressure measured at wireless terminal102. In accordance with the illustrative embodiment, the secondcharacterization characterizes the pressure in the air in the vicinityof wireless terminal 102, as a function of time.

At task 1205, location engine 113 assesses one or more features of eachcharacterization of the pressure wave in the vicinities of one or morewireless terminals. As described above and in regard to FIGS. 12, 13,14A, and 14B, a characterization of a pressure wave can have one or moretransients present, wherein each transient has one or more predeterminedcharacteristics. A first feature determined to be present in thecharacterization, for example and without limitation, is that the peakamplitude (i.e., a non-negative value) of a transient exceeds, by apredetermined amount, a median value or a mean value of a portion of thepressure wave being characterized (as described in FIG. 14B). A secondfeature is that the duration of a transient exceeds a predeterminedvalue (as described in FIG. 14A).

A third feature is that the transient, or the pressure wave in general,matches a predetermined pattern. For example, a pressure wave might bevery “spiky” when a wireless terminal is next to a door of an elevatorbeing operated or might exhibit a different slope or change in slope,compared to when the wireless terminal is far away from the elevatordoor or is experiencing a pressure wave from a different source (e.g., abuilding entry door, etc.). In other words, location engine 113 candistinguish each source of a pressure wave from one another by thesignature of the event caused by the source and where the wirelessterminal currently is in relation to the source.

Location engine 113 also determines the time at which each transient inthe pressure wave is experienced by each wireless terminal, in order touse the information for time-dependent calculations (e.g.,trilateration, etc.).

As those who are skilled in the art will appreciate after reading thisspecification, location engine 113 is able to take advantage of a firstpressure wave, at least in some circumstances, having a uniquesignature. The signature is unique in that it distinguishes the firstpressure wave (e.g., caused by a first event, originating at a firstsource, etc.) from a second pressure wave that might be present and/orpropagating at the same time as the first. For example, in at least someof the operations described below, location engine 113 can choose toprocess multiple characterizations of a first pressure wave, but notthose of a second pressure wave, or it can choose to process multiplecharacterizations of a second pressure wave, but not those of a firstpressure wave, or it can choose to process both sets ofcharacterizations.

Task 411: Estimate the Location of Wireless Terminal 101—FIG. 15 depictsa flowchart of the salient processes performed in accordance with task411.

At task 1501, location engine 113 designates at least one of a pluralityof possible locations of wireless terminal 101 as improbable based onone or more of:

-   -   (i) the characterizations of the pressure wave in the vicinities        of one or more wireless terminals, including wireless terminals        101 and 102, and    -   (ii) the information in the GIS database.        Task 1501 is described in detail below and in the accompanying        figures.

At task 1503, location engine 113 generates an estimate of the locationof wireless terminal 101 based on one or more of:

-   -   (i) the plurality of possible locations not designated as        improbable in task 1501,    -   (ii) the empirical data on radio signals received in task 407,    -   (iii) the information in the location-trait database,    -   (iv) the characterizations of the pressure wave in the        vicinities of one or more wireless terminals (e.g., terminal        101, terminal 102, etc.), and    -   (v) the location at which a predetermined event occurs that        causes the pressure wave.

It will be clear to those skilled in the art how to enable embodimentsof the present invention to perform task 1503 in regard to items (i)through (iii) in the list above. See for example and without limitation,U.S. Pat. Nos. 6,944,465, 7460,505, 7,383,051, 7,257,414, 7,753,278,7,433,695, 7,848,762, and 8,630,665, each of which are incorporated byreference.

In some embodiments of the present invention, location engine 113estimates a location as being whether wireless terminal 101 is indoorsor outdoors. For example, as described and regarding task 1601, locationengine 113 might estimate (e.g., determine a probability, etc.) thatwireless terminal is indoors based on the characterization of thepressure wave in the vicinity of wireless terminal 101.

Location engine 113, in some embodiments of the present invention, canbase the estimate of the location of wireless terminal 101 on one ormore features of each characterization of the pressure wave in thevicinities of one or more wireless terminals. As described above and inregard to task 409 and FIGS. 12, 13, 14A, and 14B, a characterization ofa pressure wave can have one or more transients present, wherein eachtransient has one or more predetermined characteristics. A first featuredetermined to be present in the characterization, for example andwithout limitation, is that the peak amplitude (i.e., a non-negativevalue) of a transient exceeds, by a predetermined amount, a median valueor a mean value of a portion of the pressure wave being characterized(as described in FIG. 14B). As another example, a second feature is thatthe duration of a transient exceeds a predetermined value (as describedin FIG. 14A). As yet another example, a third feature is that thetransient matches a predetermined pattern.

Location engine 113, in some embodiments of the present invention, canbase the estimate of the location of wireless terminal 101 on thelocation at which a predetermined event occurs that causes the pressurewave. For example and without limitation, a particular door to abuilding is known to have been opened or closed at a particular time(e.g., as determined from a security log, etc.) and a transient appearsin the pressure wave of wireless terminal 101 a particular time later.In this example, location engine 113 can estimate the distance from thedoor at a known location in the building to wireless terminal 101'slocation, provided that the speed of propagation of the pressure wave isknown. The speed of the wave can be determined ahead of time (e.g.,empirically, via modelling, etc.). The speed can be affected by airdensity, air temperature, and/or water saturation (humidity), as thosewho are skilled in the art will appreciate. In the same example,transients appearing in pressure waves in the vicinities of additionalwireless terminals can be used to further refine the estimate of thelocation of wireless terminal 101. The presence of a transient, or otherfeatures, in each characterization of the pressure wave in thevicinities of one or more wireless terminals, can be ascertained asdescribed above.

As those who are skilled in the art will appreciate after reading thisspecification, location engine 113 can also base the outcome of task1501 and/or task 1503 at least in part on temperature and/or humiditymeasurements received from one or more wireless terminals. For example,location engine 113 can retrieve the local outdoor temperature for anarea and adjust the probability of a wireless terminal being in abuilding (or vehicle) if the temperature measured by the wirelessterminal and the outdoor temperature differ (e.g., by at least apredetermined amount). As a second example, location engine 113 canretrieve the local outdoor humidity for an area and adjust theprobability of a wireless terminal being in a building (or vehicle) ifthe humidity measured by the wireless terminal and the outdoor humiditydiffer (e.g., by at least a predetermined amount).

In addition, as those who are skilled in the art will appreciate afterreading this specification, location engine 113 can also use thebarometric pressure measurements provided by wireless terminal 101 todetermine the particular type of building that the wireless terminal iswithin. For example, location engine 113 can compare the change inoutside pressure over time and the delay in corresponding pressurechange within the building, wherein the delay in the in-buildingpressure change can be determined from the barometric measurementsprovided by the wireless terminal known or estimated to be inside abuilding. Estimating the particular type of building can be used torefine further the results of task 1501 and/or task 1503, for exampleand without limitation.

Task 1501: Designate at Least One of the Plurality of Possible Locationsof Wireless Terminal as Improbable Based on the Measurement ofBarometric Pressure—FIG. 16 depicts a flowchart of the salient processesperformed in accordance with task 1501.

At task 1601, location engine 113 generates an estimate of whetherwireless terminal 101 is indoors or outdoors, based on one or morefeatures of the characterization of the pressure wave in the vicinity ofterminal 101 being present, as assessed at task 1205. For example, awireless terminal that is outside of a building (e.g., wireless terminal131 in FIG. 8A) does not experience (i.e., “see”) a transient in apressure wave, but a wireless terminal that is in the building might“see” the transient; thus, the disclosed technique can be regarded as aninbuilding detection system. Furthermore, because the pressure wavechanges character depending on where the pressure wave is measured,location engine 113 can use the characterization of the pressure wave todetermine where the wireless terminal is, at least with respect to thesource of the pressure wave (e.g., “near the entry door”, “far from theentry door”, “next to an elevator” as is the case for wireless terminal102 in FIGS. 8A and 8B, “on the third floor” as is the case for wirelessterminal 101 in FIG. 8B, etc.).

Location engine 113, in some embodiments of the present invention,generates an estimate of whether wireless terminal 101 is indoors oroutdoors, based on one or more features of the characterization of thepressure wave in the vicinity of a different wireless terminal (e.g.,wireless terminal 102, etc.). For example and without limitation, if thetransient of the pressure wave (and/or other components of the pressurewave) in the vicinity of wireless terminal 101 matches in somepredetermined way to the transient (and/or other components) of thepressure wave in the vicinity of wireless terminal 102, and wirelessterminal 102 is estimated or known to be indoors (or outdoors), then onemight infer that wireless terminal 101 is also indoors (or outdoors).

As another example, if the pressure changes detected in a building bywireless terminal 101 over a predetermined period (e.g., 10 minutes,etc.) deviate according to a predetermined characteristic (e.g., therate of change, etc.) from what is being detected by one or moreterminals that are known to be outdoors (e.g., terminal 102 ifoutdoors), then one can infer that terminal 101 is indoors. This can bedue to the building acting as a giant pressure attenuator. If theweather changes in pressure at one rate outside, it might increase ordecrease more slowly inside a tight building.

In some embodiments of the present invention, location engine 113 alsoestimates a probability that the wireless terminal is correctlyclassified as indoors (or outdoors), in well-known fashion. For exampleand without limitation, the estimated probability can be based on wherea decision threshold is set in relation to one or more cumulativedistribution functions, which dictate how likely it is that the wirelessterminal is outdoors when it is decided that the wireless terminal isindoors, and vice-versa. This is further described, for example andwithout limitation, in U.S. Pat. No. 9,332,389, which is incorporatedherein by reference.

As those who are skilled in the art will appreciate, after reading thisspecification, the rest of the location estimation process can be basedon the probability estimate generated. For example, the locationestimation can react one way if the estimated probability of thewireless terminal being indoors is 95%, while the location estimationcan react a different way if the estimated probability is 50%.

In some embodiments of the present invention, location engine 113 basesthe estimate of the probability that a wireless terminal is indoors, onwhether the transient correlates to one or more occurrences of apredetermined event. The predetermined event can be, for example andwithout limitation, a door (e.g., building entry door, internal door,elevator door, etc.) opening and or closing. In some embodiments,location engine 113 determines whether the transient correlates to anevent taking place in, or being tracked by, an independent system suchas, for example and without limitation, a security log that tracks whena particular door has been opened and/or closed in a building; thelocation engine can determine whether a time in such an independentsystem matches or correlates to the time that the transient occurs,allowing for any propagation delay of the pressure wave.

At task 1603, location engine 113 designates at least one of a pluralityof possible locations of wireless terminal 101 as improbable based onone more of i) the one or more features assessed as being present intask 1205, ii) the estimate of whether wireless terminal 101 is indoors,and/or iii) the estimate of whether wireless terminal 102 is indoors.

Location server 113 can designate a location as improbable based on anestimate of wireless terminal 101 being outdoors, when the location isknown to be indoors. The theory underlying this test is when theterminal is estimated to be outdoors, any indoor location is consideredto be invalid. Similarly, location server 113 can designate a locationas improbable based on an estimate of wireless terminal 101 beingindoors, when the location is known to be outdoors. The theoryunderlying this test is when the terminal is estimated to be indoors,any outdoor location is considered to be invalid. FIG. 17 depicts anillustrative map of the locations in geographic region 120 that aredesignated as improbable and those that are not, and corresponds to thescenario in which wireless terminal 101 has been estimated as beingindoors.

Task 415: Estimate Information About an Event Having Occurred—FIG. 18depicts a flowchart of the salient processes performed in accordancewith task 415.

At task 1801, location engine 113 generates an estimate of the locationof wireless terminal 101. In some embodiments of the present invention,location engine 113 generates an estimate of the location of otherwireless terminals (e.g., wireless terminal 102, etc.). Location engine113 can estimate the location of the wireless terminal in accordancewith task 411 or in accordance with a different technique.

At task 1803, location engine 113 detects an occurrence of an eventbased on whether a predetermined feature (e.g., a transient, etc.)having a predetermined characteristic is present in the characterizationof the pressure wave in the vicinity of wireless terminal 101, asdetermined at task 1205. In some embodiments of the present invention,the event is external to wireless terminal 101, meaning that the eventcomes from or derives from a source outside the wireless terminal.

The event can be, for example and without limitation, the opening and/orclosing of a door or other activity (e.g., building entry door, internaldoor, elevator operation, etc.). As those who are skilled in the artwill appreciate after reading this specification, the event can be anyother type of occurrence that gives off a pressure wave such as, whilenot being limited to, a gunshot, an explosion, a loud or sudden noise,the cycling on and/or off of an HVAC system, the operation ofmanufacturing equipment, and so on, and the source of the event can beany object that is capable of producing such a pressure wave.Furthermore, as those who are skilled in the art will appreciate afterreading this specification, the source of a pressure wave need not beconfined to being within a building or even indoors; for example andwithout limitation, the source can be within an airplane, a bus, atrain, or a different type of vehicle, vessel, structure, and so forth,having a self-contained space. In some cases, the source of the pressurewave can be outdoors and/or the pressure wave can propagate outdoors.

Location engine 113 can also detect that a particular event hasoccurred, based on the characterization of the pressure wave. To do so,the location engine can match the characterization with one or moreknown patterns of events that can take place in the environment in whichthe wireless terminal is located. Furthermore, the location estimategenerated at task 1801 can be used to narrow down the possible eventsthat might have taken place. For instance, if the characterization ofthe pressure wave suggests that an elevator door has opened or that theelevator is being operated, and the estimate of wireless terminal 101'slocation has the terminal in the vicinity of the elevator at the frontof the building, then location engine 113 can infer that the frontelevator, and not the back elevator, was operated.

FIGS. 19A and 19B depict illustrative locations of wireless terminals101, 102, 131, and 132 in and around building 602. Because the pressurewaves experienced by these different wireless terminals can be differentfrom one another, location engine 113 uses characterizations of thepressure wave in the vicinities of the wireless terminals to estimatevarious types of information.

In some embodiments of the present invention, location engine 113detects an occurrence of an event based on whether a predeterminedfeature (e.g., a transient, etc.) having a predetermined characteristicis present in the characterizations of the pressure wave in thevicinities of multiple wireless terminals (e.g., wireless terminals 101and 102, etc.).

In some embodiments of the present invention, location engine 113detects the occurrence of the event, based on a propagationcharacteristic of the pressure wave. For example and without limitation,the location engine can account for the speed of the pressure wave andestimate the time at which the event occurred, in contrast to the timeat which the transient corresponding to the event arrived at thewireless terminal measuring the pressure wave. Moreover, location engine113 can corroborate and/or correlate the event time that was estimatedbased on data from wireless terminal 101 with event times that wereestimated based on data from other terminals (e.g., wireless terminal102, etc.).

A first example involves elevator 801 being operated and, consequently,producing a pressure wave (e.g., via the plunger-type movement of theelevator car in the shaft, via its door being operated, etc.). Locationengine 113 uses characterization 1901 of the pressure wave in thevicinity of wireless terminal 102, as the pressure wave propagatesdirectly from the elevator door, in order to determine that an elevatoris being operated (i.e., elevator car moving up or down, creating aplunger effect in the elevator shaft and, consequently, creating aspecific pressure signature). This is because an elevator in building602 is known to produce a different set of features (i.e., a differentpattern) in its pressure wave than, for example, building entry door803. Additionally, a location of wireless terminal 102 can be inferred,by determining that because it is detecting a transient pattern thatmatches that of an elevator, in which the transient has sufficientenough peak amplitude, the terminal is probably near elevator 801.

A second example involves entry door 804 being operated and,consequently, producing a pressure wave. Location engine 113 uses i)characterization 1902 of the pressure wave in the vicinity of wirelessterminal 131, as it propagates directly from door 804 and ii)characterization 1903 of the pressure wave in the vicinity of wirelessterminal 101, as it propagates out of stairwell 802 (from the groundfloor depicted in map 602-1), in order to determine that an entry doorhas been opened and/or closed. This is because an entry door in building602 is known to produce a different set of features (i.e., a differentpattern) in its pressure wave than, for instance, elevator 801.Furthermore, engine 113 can determine through features in thecharacterizations of the pressure wave that door 804 is the entry doorbeing operated. The probative features in the characterizations includeone or more of i) the timing of when the transients occur at eachdetecting wireless terminal (i.e., terminals 131 and 101) as thepressure wave propagates through building 602, ii) the relatively largepeak amplitude of the transient in characterization 1902 detected bywireless terminal 131 known to be near door 804, and iii) the lack of arelevant transient being detected by wireless terminal 132 that is knownto be distant from door 804.

At task 1805, location engine 113 generates an estimate of the directionin which the detected event occurred, based on a relationship between i)a predetermined feature in the characterization of the pressure wave inthe vicinity of wireless terminal 101 and ii) a predetermined feature inthe characterization of the pressure wave in the vicinity of wirelessterminal 102. For example and without limitation, location engine 113can determine the times, relative to a common time reference, at whichthe feature, such as a transient as detected in accordance with task1205, propagates past each wireless terminal and can then trilaterateaccordingly the direction in which the event occurred. Location engine113 also bases the estimate of the direction of the event on thelocations of wireless terminals 101 and 102. In doing so, the locationengine establishes a frame of reference with respect to each other(i.e., to estimate direction in relation to the wireless terminals) or aframe of reference with respect to a ground reference (i.e., to estimatedirection in relation to the ground reference).

In some embodiments of the present invention, location engine 113accounts for the speed, or other propagation characteristic, of thepressure wave in order to refine the estimate of the direction of theevent. For example, engine 113 can apply trilateration to determine thedistance to the source of the event from each of multiple wirelessterminals, by accounting for both i) the times at which the event isexperienced (i.e., propagates by) by each terminal and ii) the speed atwhich the pressure wave propagates. By applying trilateration in thisway, engine 113 can estimate the direction of the source of the event,and also the location of the source. It can also be used to locate oridentify new location markers and use them in future locationestimations, based upon a pressure signature that is new to that areaand located by multiple wireless terminals.

Location engine 113 can also use the estimate of direction in order todetermine which particular event has occurred. For instance, supposethat a characterization of the pressure wave suggests that an elevatordoor has opened at that an elevator has been operated, but there aremany elevators and elevator doors throughout a building that generatesimilar pressure waves. In this case, engine 113 can use the estimate ofthe direction in which the event occurred in order to infer that thedoor of an elevator in the back of the building, and not in the front,has opened, at that a particular elevator has been operated.

At task 1807, location engine 113 generates an estimate of the locationof the source of the detected event. The estimate of location of thesource can be expressed as being “indoors”, “outdoors”, “in a room”, “ona building floor”, “next to a wireless terminal”, or in terms ofgeo-coordinates, for example and without limitation. The location enginebases the estimate on at least i) the characterization of the pressurewave in the vicinity of wireless terminal 101, as assessed at task 1205,and ii) the estimate of location of wireless terminal 101, as generatedat task 1801. For example, location engine 113 can use one or morefeatures in the characterization, such as the peak amplitude of atransient, in order to determine the proximity of terminal 101 to thesource of the event. In the example, if the location engine determinesterminal 101 to be nearby the source of the event (e.g., an elevator,etc.), then it can infer the source's location as being approximatelythat of the wireless terminal.

Location engine can further refine the estimate of the source'slocation, based on i) a relationship between multiple characterizationsof the pressure wave in the vicinities of multiple wireless terminalsand ii) the locations of said terminals. For example and withoutlimitation, location engine 113 can determine the times, relative to acommon time reference, at which the feature, such as a transient asdetected in accordance with task 1205, propagates past each wirelessterminal (e.g., three or more, etc.) and can then trilaterateaccordingly the source of the event.

In some embodiments of the present invention, location engine 113accounts for the speed, or other propagation characteristic(s), of thepressure wave in order to refine the location estimate of the source ofthe event.

Location engine 113 can also use the location estimate in order todetermine which particular event has occurred. For instance, supposethat a characterization of the pressure wave suggests that an elevatordoor has opened at that an elevator is being operated, but there aremany elevators or elevator doors throughout a building that generatesimilar pressure waves. In this case, engine 113 can use the estimate ofthe location of the source in order to infer that an elevator in theback of the building, and not in the front, was operated.

It is to be understood that the disclosure teaches just one example ofthe illustrative embodiment and that many variations of the inventioncan easily be devised by those skilled in the art after reading thisdisclosure and that the scope of the present invention is to bedetermined by the following claims.

What is claimed is: 1-8. (canceled)
 9. A method of estimating thelocation of a wireless terminal, the method comprising: receiving, by adata processing system, the identity of a radio signal that is receivedby a wireless terminal; receiving, by the data processing system, asample of barometric pressure measured by the wireless terminal;generating, by the data-processing system, a characterization of apressure wave in the vicinity of the wireless terminal based on thesample of barometric pressure measured by the wireless terminal;designating at least one of a plurality of possible locations of thewireless terminal as improbable based on: whether a predeterminedfeature is present in the characterization of the pressure wave; andestimating the location of the wireless terminal to be one of theplurality of possible locations of the wireless terminal not designatedas improbable based on: the identity of the radio signal, and apropagation characteristic of the pressure wave, wherein the propagationcharacteristic of the pressure wave is its speed of propagation.
 10. Themethod of claim 9 further comprising: receiving, by the data processingsystem, a measurement of a location-dependent trait of a radio signal asreceived by the wireless terminal; and wherein estimating the locationof the wireless terminal to be one of the plurality of possiblelocations of the wireless terminal not designated as improbable is alsobased on: the measurement of the location-dependent trait of the radiosignal.
 11. The method of claim 10, wherein the predetermined feature isa transient having a predetermined characteristic.
 12. The method ofclaim 10, wherein all of the plurality of possible locations of thewireless terminal not designated as improbable are indoors.
 13. A methodof estimating the location of a wireless terminal, the methodcomprising: receiving, by a data processing system, a measurement of alocation-dependent trait of a radio signal as received by a wirelessterminal; receiving, by the data processing system, a sample ofbarometric pressure measured by the wireless terminal; generating, bythe data-processing system, a characterization of a pressure wave in thevicinity of the wireless terminal based on the sample of barometricpressure measured by the wireless terminal; designating at least one ofa plurality of possible locations of the wireless terminal as improbablebased on: whether a predetermined feature is present in thecharacterization of the pressure wave; and estimating the location ofthe wireless terminal to be one of the plurality of possible locationsof the wireless terminal not designated as improbable based on: themeasurement of the location-dependent trait of the radio signal, and apropagation characteristic of the pressure wave, wherein the propagationcharacteristic of the pressure wave is its speed of propagation.
 14. Themethod of claim 13, wherein the step of estimating the location of thewireless terminal comprises: comparing the measurement of thelocation-dependent trait of the radio signal to: a) a first expectedvalue of the location-dependent trait of the radio signal at a firstlocation, and b) a second expected value of the location-dependent traitof the radio signal at a second location.
 15. The method of claim 13,wherein the predetermined feature is a transient having a predeterminedcharacteristic.
 16. The method of claim 13, wherein all of the pluralityof possible locations of the wireless terminal not designated asimprobable are indoors. 17-19. (canceled)
 20. A method of estimating thelocation of a wireless terminal, the method comprising: receiving, by adata processing system, a sample of barometric pressure measured by awireless terminal; generating, by the data-processing system, acharacterization of a pressure wave in the vicinity of the wirelessterminal based on the sample; and generating, by the data-processingsystem, an estimate of the location of the wireless terminal based on:i) the characterization of the pressure wave in the vicinity of thewireless terminal, and ii) a propagation characteristic of the pressurewave, wherein the propagation characteristic of the pressure wave is itsspeed of propagation, and iii) the location at which a predeterminedevent occurs that causes the pressure wave.
 21. The method of claim 20,wherein the event comprises at least one of i) an opening of and ii) aclosing of a door of a building, wherein the location at which thepredetermined event occurs is the location of the door.
 22. The methodof claim 20, wherein the estimate of the location of the wirelessterminal is further based on the time at which a predetermined featureis present in the characterization of the pressure wave, in relation tothe time at which the predetermined event occurs.
 23. The method ofclaim 22, wherein the predetermined feature is a transient having apredetermined characteristic.
 24. The method of claim 23, wherein thepredetermined characteristic is that the peak amplitude of the transientexceeds, by a predetermined amount, at least one of i) a mean value ofand ii) median value of a portion of the pressure wave in the vicinityof the first wireless terminal.
 25. The method of claim 20, furthercomprising inferring the speed of propagation of the pressure wave, bycharacterizing a transient that is present in the pressure wave.
 26. Themethod of claim 22, further comprising: designating at least one of aplurality of possible locations of the wireless terminal as improbablebased on whether the predetermined feature is present in thecharacterization of the pressure wave; wherein the estimate of thelocation of the wireless terminal is one of the plurality of possiblelocations of the wireless terminal not designated as improbable.
 27. Themethod of claim 9, further comprising inferring the speed of propagationof the pressure wave, by characterizing a transient that is present inthe pressure wave.
 28. The method of claim 13, further comprisinginferring the speed of propagation of the pressure wave, bycharacterizing a transient that is present in the pressure wave.